package org.jeecg.trace.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @Description: 物料批次表
 * @Author: shaolong
 * @Date:   2022-10-26
 * @Version: V1.0
 */
@Data
@TableName("mes_material_lot")
@ApiModel(value="mes_material_lot对象", description="物料批次表")
public class MesMaterialLot implements Serializable {
    private static final long serialVersionUID = 1L;

	/**产线或产线组*/
    @Excel(name = "产线或产线组", width = 15, dictTable = "mes_line_cfg", dicText = "NAME", dicCode = "LINE")
    @Dict(dictTable = "mes_line_cfg", dicText = "NAME", dicCode = "LINE")
    @ApiModelProperty(value = "产线或产线组")
    private String line;
	/**产品(PARTNO OR PARTNO_GROUP)*/
    @Excel(name = "产品(PARTNO OR PARTNO_GROUP)", width = 15)
    @ApiModelProperty(value = "产品(PARTNO OR PARTNO_GROUP)")
    private String partno;
    /**
     * 工站
     */
    @Excel(name = "工站", width = 15, dictTable = "mes_line_stn_cfg", dicText = "STN", dicCode = "STN")
    @Dict(dictTable = "mes_line_stn_cfg", dicText = "STN", dicCode = "STN")
    @ApiModelProperty(value = "工站")
    private String stn;
    /**
     * 物料
     */
    @Excel(name = "物料", width = 15)
    @ApiModelProperty(value = "物料")
    private String itempartno;

    /**
     * 物料
     */
    @Excel(name = "原材料描述", width = 15)
    @ApiModelProperty(value = "原材料描述")
    @TableField(exist = false)
    private String descLocal;
    /**
     * 物料版本
     */
    @Excel(name = "物料版本", width = 15)
    @ApiModelProperty(value = "物料版本")
    private String itemrev;
    /**
     * 物料批次起始数量
     */
    @Excel(name = "物料批次起始数量", width = 15)
    @ApiModelProperty(value = "物料批次起始数量")
    private java.math.BigDecimal qtyStart;
    /**
     * 物料批次
     */
    @Excel(name = "物料批次", width = 15)
    @ApiModelProperty(value = "物料批次")
    private String lot;
	/**物料批次当前数量*/
    @Excel(name = "物料批次当前数量", width = 15)
    @ApiModelProperty(value = "物料批次当前数量")
    private java.math.BigDecimal qty;
	/**是否不分产品共享物料:1是共享其他都不共享*/
    @ApiModelProperty(value = "是否不分产品共享物料")
    @Excel(name = "是否共享物料", width = 15, dicCode = "isEnabled")
    @Dict(dicCode = "isEnabled")
    private String shared;
	/**供应商批次*/
    @Excel(name = "供应商批次", width = 15)
    @ApiModelProperty(value = "供应商批次")
    private String supplierLot;
	/**上料时间*/
    @Excel(name = "上料时间", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "上料时间")
    private Date firsttime;
	/**保留*/
    @Excel(name = "保留", width = 15)
    @ApiModelProperty(value = "保留")
    private String reserved;
    /**
     * 状态. 0: 关闭, 1: 在线
     */
    @Excel(name = "状态", width = 15, dicCode = "MesMaterialLot_status")
    @Dict(dicCode = "MesMaterialLot_status")
    @ApiModelProperty(value = "状态")
    private String status;
    /**
     * 更新时间
     */
    @Excel(name = "更新时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date ctime;

    /**更新时间*/

    @TableField(exist = false)
    private String lotAndItemPartNo;
}
